{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import json"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "with open('高校信息.json','r',encoding='utf-8') as f:\n",
    "    data = json.load(f)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "31"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(data['schools'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[['北京市', 92],\n",
       " ['天津市', 57],\n",
       " ['河北省', 5],\n",
       " ['河北省', 25],\n",
       " ['河北省', 1],\n",
       " ['河北省', 10],\n",
       " ['河北省', 5],\n",
       " ['河北省', 8],\n",
       " ['河北省', 5],\n",
       " ['河北省', 10],\n",
       " ['河北省', 2],\n",
       " ['河北省', 4],\n",
       " ['河北省', 6],\n",
       " ['河北省', 40],\n",
       " ['山西省', 6],\n",
       " ['山西省', 5],\n",
       " ['山西省', 5],\n",
       " ['山西省', 2],\n",
       " ['山西省', 5],\n",
       " ['山西省', 2],\n",
       " ['山西省', 2],\n",
       " ['山西省', 3],\n",
       " ['山西省', 1],\n",
       " ['山西省', 2],\n",
       " ['山西省', 47],\n",
       " ['内蒙古自治区', 5],\n",
       " ['内蒙古自治区', 2],\n",
       " ['内蒙古自治区', 4],\n",
       " ['内蒙古自治区', 3],\n",
       " ['内蒙古自治区', 3],\n",
       " ['内蒙古自治区', 2],\n",
       " ['内蒙古自治区', 3],\n",
       " ['内蒙古自治区', 1],\n",
       " ['内蒙古自治区', 1],\n",
       " ['内蒙古自治区', 1],\n",
       " ['内蒙古自治区', 1],\n",
       " ['内蒙古自治区', 27],\n",
       " ['辽宁省', 22],\n",
       " ['辽宁省', 2],\n",
       " ['辽宁省', 2],\n",
       " ['辽宁省', 4],\n",
       " ['辽宁省', 9],\n",
       " ['辽宁省', 2],\n",
       " ['辽宁省', 3],\n",
       " ['辽宁省', 3],\n",
       " ['辽宁省', 2],\n",
       " ['辽宁省', 3],\n",
       " ['辽宁省', 1],\n",
       " ['辽宁省', 4],\n",
       " ['辽宁省', 2],\n",
       " ['辽宁省', 56],\n",
       " ['吉林省', 3],\n",
       " ['吉林省', 7],\n",
       " ['吉林省', 1],\n",
       " ['吉林省', 4],\n",
       " ['吉林省', 3],\n",
       " ['吉林省', 1],\n",
       " ['吉林省', 1],\n",
       " ['吉林省', 1],\n",
       " ['吉林省', 41],\n",
       " ['黑龙江省', 5],\n",
       " ['黑龙江省', 4],\n",
       " ['黑龙江省', 7],\n",
       " ['黑龙江省', 6],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 1],\n",
       " ['黑龙江省', 51],\n",
       " ['上海市', 64],\n",
       " ['江苏省', 15],\n",
       " ['江苏省', 8],\n",
       " ['江苏省', 11],\n",
       " ['江苏省', 9],\n",
       " ['江苏省', 9],\n",
       " ['江苏省', 8],\n",
       " ['江苏省', 6],\n",
       " ['江苏省', 7],\n",
       " ['江苏省', 9],\n",
       " ['江苏省', 5],\n",
       " ['江苏省', 6],\n",
       " ['江苏省', 1],\n",
       " ['江苏省', 3],\n",
       " ['江苏省', 1],\n",
       " ['江苏省', 69],\n",
       " ['浙江省', 4],\n",
       " ['浙江省', 11],\n",
       " ['浙江省', 7],\n",
       " ['浙江省', 3],\n",
       " ['浙江省', 8],\n",
       " ['浙江省', 4],\n",
       " ['浙江省', 2],\n",
       " ['浙江省', 6],\n",
       " ['浙江省', 13],\n",
       " ['浙江省', 2],\n",
       " ['浙江省', 47],\n",
       " ['安徽省', 6],\n",
       " ['安徽省', 5],\n",
       " ['安徽省', 10],\n",
       " ['安徽省', 6],\n",
       " ['安徽省', 6],\n",
       " ['安徽省', 5],\n",
       " ['安徽省', 4],\n",
       " ['安徽省', 2],\n",
       " ['安徽省', 5],\n",
       " ['安徽省', 4],\n",
       " ['安徽省', 3],\n",
       " ['安徽省', 3],\n",
       " ['安徽省', 3],\n",
       " ['安徽省', 2],\n",
       " ['安徽省', 1],\n",
       " ['安徽省', 54],\n",
       " ['福建省', 14],\n",
       " ['福建省', 21],\n",
       " ['福建省', 4],\n",
       " ['福建省', 2],\n",
       " ['福建省', 6],\n",
       " ['福建省', 3],\n",
       " ['福建省', 2],\n",
       " ['福建省', 2],\n",
       " ['福建省', 35],\n",
       " ['江西省', 4],\n",
       " ['江西省', 9],\n",
       " ['江西省', 5],\n",
       " ['江西省', 4],\n",
       " ['江西省', 5],\n",
       " ['江西省', 2],\n",
       " ['江西省', 3],\n",
       " ['江西省', 5],\n",
       " ['江西省', 6],\n",
       " ['江西省', 2],\n",
       " ['江西省', 55],\n",
       " ['山东省', 15],\n",
       " ['山东省', 7],\n",
       " ['山东省', 9],\n",
       " ['山东省', 11],\n",
       " ['山东省', 3],\n",
       " ['山东省', 6],\n",
       " ['山东省', 3],\n",
       " ['山东省', 4],\n",
       " ['山东省', 13],\n",
       " ['山东省', 3],\n",
       " ['山东省', 4],\n",
       " ['山东省', 3],\n",
       " ['山东省', 4],\n",
       " ['山东省', 4],\n",
       " ['山东省', 3],\n",
       " ['山东省', 1],\n",
       " ['山东省', 52],\n",
       " ['河南省', 6],\n",
       " ['河南省', 6],\n",
       " ['河南省', 8],\n",
       " ['河南省', 5],\n",
       " ['河南省', 5],\n",
       " ['河南省', 3],\n",
       " ['河南省', 6],\n",
       " ['河南省', 4],\n",
       " ['河南省', 6],\n",
       " ['河南省', 6],\n",
       " ['河南省', 3],\n",
       " ['河南省', 5],\n",
       " ['河南省', 3],\n",
       " ['河南省', 2],\n",
       " ['河南省', 2],\n",
       " ['河南省', 1],\n",
       " ['河南省', 3],\n",
       " ['河南省', 60],\n",
       " ['湖北省', 6],\n",
       " ['湖北省', 4],\n",
       " ['湖北省', 4],\n",
       " ['湖北省', 3],\n",
       " ['湖北省', 5],\n",
       " ['湖北省', 4],\n",
       " ['湖北省', 3],\n",
       " ['湖北省', 2],\n",
       " ['湖北省', 5],\n",
       " ['湖北省', 2],\n",
       " ['湖北省', 1],\n",
       " ['湖北省', 1],\n",
       " ['湖北省', 1],\n",
       " ['湖北省', 1],\n",
       " ['湖北省', 1],\n",
       " ['湖北省', 86],\n",
       " ['湖南省', 2],\n",
       " ['湖南省', 25],\n",
       " ['湖南省', 5],\n",
       " ['湖南省', 3],\n",
       " ['湖南省', 10],\n",
       " ['湖南省', 3],\n",
       " ['湖南省', 3],\n",
       " ['湖南省', 6],\n",
       " ['湖南省', 3],\n",
       " ['湖南省', 3],\n",
       " ['湖南省', 3],\n",
       " ['湖南省', 10],\n",
       " ['湖南省', 2],\n",
       " ['湖南省', 46],\n",
       " ['广东省', 3],\n",
       " ['广东省', 6],\n",
       " ['广东省', 2],\n",
       " ['广东省', 5],\n",
       " ['广东省', 1],\n",
       " ['广东省', 4],\n",
       " ['广东省', 1],\n",
       " ['广东省', 6],\n",
       " ['广东省', 4],\n",
       " ['广东省', 3],\n",
       " ['广东省', 4],\n",
       " ['广东省', 7],\n",
       " ['广东省', 6],\n",
       " ['广东省', 5],\n",
       " ['广东省', 2],\n",
       " ['广东省', 1],\n",
       " ['广东省', 1],\n",
       " ['广东省', 1],\n",
       " ['广东省', 1],\n",
       " ['广东省', 2],\n",
       " ['广东省', 86],\n",
       " ['广西壮族自治区', 5],\n",
       " ['广西壮族自治区', 7],\n",
       " ['广西壮族自治区', 4],\n",
       " ['广西壮族自治区', 5],\n",
       " ['广西壮族自治区', 2],\n",
       " ['广西壮族自治区', 2],\n",
       " ['广西壮族自治区', 2],\n",
       " ['广西壮族自治区', 2],\n",
       " ['广西壮族自治区', 2],\n",
       " ['广西壮族自治区', 1],\n",
       " ['广西壮族自治区', 3],\n",
       " ['广西壮族自治区', 39],\n",
       " ['海南省', 6],\n",
       " ['海南省', 1],\n",
       " ['海南省', 1],\n",
       " ['海南省', 11],\n",
       " ['重庆市', 65],\n",
       " ['四川省', 9],\n",
       " ['四川省', 2],\n",
       " ['四川省', 5],\n",
       " ['四川省', 2],\n",
       " ['四川省', 1],\n",
       " ['四川省', 5],\n",
       " ['四川省', 4],\n",
       " ['四川省', 3],\n",
       " ['四川省', 2],\n",
       " ['四川省', 2],\n",
       " ['四川省', 1],\n",
       " ['四川省', 3],\n",
       " ['四川省', 2],\n",
       " ['四川省', 1],\n",
       " ['四川省', 2],\n",
       " ['四川省', 1],\n",
       " ['四川省', 1],\n",
       " ['四川省', 2],\n",
       " ['四川省', 1],\n",
       " ['四川省', 1],\n",
       " ['四川省', 1],\n",
       " ['四川省', 58],\n",
       " ['贵州省', 7],\n",
       " ['贵州省', 5],\n",
       " ['贵州省', 2],\n",
       " ['贵州省', 2],\n",
       " ['贵州省', 5],\n",
       " ['贵州省', 3],\n",
       " ['贵州省', 7],\n",
       " ['贵州省', 2],\n",
       " ['贵州省', 37],\n",
       " ['云南省', 4],\n",
       " ['云南省', 2],\n",
       " ['云南省', 3],\n",
       " ['云南省', 1],\n",
       " ['云南省', 2],\n",
       " ['云南省', 3],\n",
       " ['云南省', 2],\n",
       " ['云南省', 3],\n",
       " ['云南省', 2],\n",
       " ['云南省', 2],\n",
       " ['云南省', 1],\n",
       " ['云南省', 1],\n",
       " ['云南省', 2],\n",
       " ['云南省', 49],\n",
       " ['西藏自治区', 1],\n",
       " ['西藏自治区', 1],\n",
       " ['西藏自治区', 5],\n",
       " ['陕西省', 9],\n",
       " ['陕西省', 2],\n",
       " ['陕西省', 3],\n",
       " ['陕西省', 3],\n",
       " ['陕西省', 3],\n",
       " ['陕西省', 2],\n",
       " ['陕西省', 2],\n",
       " ['陕西省', 2],\n",
       " ['陕西省', 1],\n",
       " ['陕西省', 66],\n",
       " ['甘肃省', 2],\n",
       " ['甘肃省', 3],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 2],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 2],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 1],\n",
       " ['甘肃省', 31],\n",
       " ['青海省', 1],\n",
       " ['青海省', 1],\n",
       " ['青海省', 10],\n",
       " ['宁夏回族自治区', 1],\n",
       " ['宁夏回族自治区', 1],\n",
       " ['宁夏回族自治区', 1],\n",
       " ['宁夏回族自治区', 16],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 3],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 3],\n",
       " ['新疆维吾尔自治区', 3],\n",
       " ['新疆维吾尔自治区', 2],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 1],\n",
       " ['新疆维吾尔自治区', 27]]"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_mul = [[i['province_name'],len(j['universities'])] for i in data['schools'] for j in i['cities']]\n",
    "data_mul"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['北京市',\n",
       " '天津市',\n",
       " '河北省',\n",
       " '山西省',\n",
       " '内蒙古自治区',\n",
       " '辽宁省',\n",
       " '吉林省',\n",
       " '黑龙江省',\n",
       " '上海市',\n",
       " '江苏省',\n",
       " '浙江省',\n",
       " '安徽省',\n",
       " '福建省',\n",
       " '江西省',\n",
       " '山东省',\n",
       " '河南省',\n",
       " '湖北省',\n",
       " '湖南省',\n",
       " '广东省',\n",
       " '广西壮族自治区',\n",
       " '海南省',\n",
       " '重庆市',\n",
       " '四川省',\n",
       " '贵州省',\n",
       " '云南省',\n",
       " '西藏自治区',\n",
       " '陕西省',\n",
       " '甘肃省',\n",
       " '青海省',\n",
       " '宁夏回族自治区',\n",
       " '新疆维吾尔自治区']"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "province_name = [i['province_name'] for i in data['schools']]\n",
    "province_name"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# values = []\n",
    "# for p in province_name:\n",
    "def sum_values(p):\n",
    "    total = 0\n",
    "    for ele in range(0,len([j[1] for i,j in enumerate(data_mul) if j[0]==p])):\n",
    "        total = total + [j[1] for i,j in enumerate(data_mul) if j[0]==p][ele]   \n",
    "    return(total)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<script>\n",
       "    require.config({\n",
       "        paths: {\n",
       "            'echarts':'https://assets.pyecharts.org/assets/echarts.min', 'china':'https://assets.pyecharts.org/assets/maps/china'\n",
       "        }\n",
       "    });\n",
       "</script>\n",
       "\n",
       "        <div id=\"235aa92d2e7146209ce2767eb2b0e08f\" style=\"width:900px; height:500px;\"></div>\n",
       "\n",
       "<script>\n",
       "        require(['echarts', 'china'], function(echarts) {\n",
       "                var chart_235aa92d2e7146209ce2767eb2b0e08f = echarts.init(\n",
       "                    document.getElementById('235aa92d2e7146209ce2767eb2b0e08f'), 'white', {renderer: 'canvas'});\n",
       "                var option_235aa92d2e7146209ce2767eb2b0e08f = {\n",
       "    \"animation\": true,\n",
       "    \"animationThreshold\": 2000,\n",
       "    \"animationDuration\": 1000,\n",
       "    \"animationEasing\": \"cubicOut\",\n",
       "    \"animationDelay\": 0,\n",
       "    \"animationDurationUpdate\": 300,\n",
       "    \"animationEasingUpdate\": \"cubicOut\",\n",
       "    \"animationDelayUpdate\": 0,\n",
       "    \"color\": [\n",
       "        \"#c23531\",\n",
       "        \"#2f4554\",\n",
       "        \"#61a0a8\",\n",
       "        \"#d48265\",\n",
       "        \"#749f83\",\n",
       "        \"#ca8622\",\n",
       "        \"#bda29a\",\n",
       "        \"#6e7074\",\n",
       "        \"#546570\",\n",
       "        \"#c4ccd3\",\n",
       "        \"#f05b72\",\n",
       "        \"#ef5b9c\",\n",
       "        \"#f47920\",\n",
       "        \"#905a3d\",\n",
       "        \"#fab27b\",\n",
       "        \"#2a5caa\",\n",
       "        \"#444693\",\n",
       "        \"#726930\",\n",
       "        \"#b2d235\",\n",
       "        \"#6d8346\",\n",
       "        \"#ac6767\",\n",
       "        \"#1d953f\",\n",
       "        \"#6950a1\",\n",
       "        \"#918597\"\n",
       "    ],\n",
       "    \"series\": [\n",
       "        {\n",
       "            \"type\": \"map\",\n",
       "            \"name\": \"\\u5546\\u5bb6A\",\n",
       "            \"label\": {\n",
       "                \"show\": true,\n",
       "                \"position\": \"top\",\n",
       "                \"margin\": 8\n",
       "            },\n",
       "            \"mapType\": \"china\",\n",
       "            \"data\": [\n",
       "                {\n",
       "                    \"name\": \"\\u5317\\u4eac\",\n",
       "                    \"value\": 92\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5929\\u6d25\",\n",
       "                    \"value\": 57\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6cb3\\u5317\",\n",
       "                    \"value\": 121\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5c71\\u897f\",\n",
       "                    \"value\": 80\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5185\\u8499\\u53e4\\u81ea\\u6cbb\",\n",
       "                    \"value\": 53\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u8fbd\\u5b81\",\n",
       "                    \"value\": 115\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5409\\u6797\",\n",
       "                    \"value\": 62\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u9ed1\\u9f99\\u6c5f\",\n",
       "                    \"value\": 81\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u4e0a\\u6d77\",\n",
       "                    \"value\": 64\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6c5f\\u82cf\",\n",
       "                    \"value\": 167\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6d59\\u6c5f\",\n",
       "                    \"value\": 107\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5b89\\u5fbd\",\n",
       "                    \"value\": 119\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u798f\\u5efa\",\n",
       "                    \"value\": 89\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6c5f\\u897f\",\n",
       "                    \"value\": 100\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5c71\\u4e1c\",\n",
       "                    \"value\": 145\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6cb3\\u5357\",\n",
       "                    \"value\": 134\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6e56\\u5317\",\n",
       "                    \"value\": 129\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6e56\\u5357\",\n",
       "                    \"value\": 124\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5e7f\\u4e1c\",\n",
       "                    \"value\": 151\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5e7f\\u897f\\u58ee\\u65cf\\u81ea\\u6cbb\",\n",
       "                    \"value\": 74\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u6d77\\u5357\",\n",
       "                    \"value\": 19\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u91cd\\u5e86\",\n",
       "                    \"value\": 65\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u56db\\u5ddd\",\n",
       "                    \"value\": 109\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u8d35\\u5dde\",\n",
       "                    \"value\": 70\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u4e91\\u5357\",\n",
       "                    \"value\": 77\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u897f\\u85cf\\u81ea\\u6cbb\",\n",
       "                    \"value\": 7\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u9655\\u897f\",\n",
       "                    \"value\": 93\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u7518\\u8083\",\n",
       "                    \"value\": 49\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u9752\\u6d77\",\n",
       "                    \"value\": 12\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u5b81\\u590f\\u56de\\u65cf\\u81ea\\u6cbb\",\n",
       "                    \"value\": 19\n",
       "                },\n",
       "                {\n",
       "                    \"name\": \"\\u65b0\\u7586\\u7ef4\\u543e\\u5c14\\u81ea\\u6cbb\",\n",
       "                    \"value\": 47\n",
       "                }\n",
       "            ],\n",
       "            \"roam\": true,\n",
       "            \"zoom\": 1,\n",
       "            \"showLegendSymbol\": true,\n",
       "            \"emphasis\": {}\n",
       "        }\n",
       "    ],\n",
       "    \"legend\": [\n",
       "        {\n",
       "            \"data\": [\n",
       "                \"\\u5546\\u5bb6A\"\n",
       "            ],\n",
       "            \"selected\": {\n",
       "                \"\\u5546\\u5bb6A\": true\n",
       "            },\n",
       "            \"show\": true,\n",
       "            \"left\": 20,\n",
       "            \"top\": 100,\n",
       "            \"padding\": 5,\n",
       "            \"itemGap\": 10,\n",
       "            \"itemWidth\": 25,\n",
       "            \"itemHeight\": 14\n",
       "        }\n",
       "    ],\n",
       "    \"tooltip\": {\n",
       "        \"show\": true,\n",
       "        \"trigger\": \"item\",\n",
       "        \"triggerOn\": \"mousemove|click\",\n",
       "        \"axisPointer\": {\n",
       "            \"type\": \"line\"\n",
       "        },\n",
       "        \"textStyle\": {\n",
       "            \"fontSize\": 14\n",
       "        },\n",
       "        \"borderWidth\": 0\n",
       "    },\n",
       "    \"title\": [\n",
       "        {\n",
       "            \"text\": \"Map-\\u9ad8\\u6821\\u5206\\u5e03\",\n",
       "            \"padding\": 5,\n",
       "            \"itemGap\": 10\n",
       "        }\n",
       "    ],\n",
       "    \"toolbox\": {\n",
       "        \"show\": true,\n",
       "        \"orient\": \"horizontal\",\n",
       "        \"itemSize\": 15,\n",
       "        \"itemGap\": 10,\n",
       "        \"left\": \"80%\",\n",
       "        \"right\": 20,\n",
       "        \"top\": 20,\n",
       "        \"feature\": {\n",
       "            \"saveAsImage\": {\n",
       "                \"type\": \"png\",\n",
       "                \"backgroundColor\": \"auto\",\n",
       "                \"connectedBackgroundColor\": \"#fff\",\n",
       "                \"show\": true,\n",
       "                \"title\": \"\\u4fdd\\u5b58\\u4e3a\\u56fe\\u7247\",\n",
       "                \"pixelRatio\": 1\n",
       "            },\n",
       "            \"restore\": {\n",
       "                \"show\": true,\n",
       "                \"title\": \"\\u8fd8\\u539f\"\n",
       "            },\n",
       "            \"dataView\": {\n",
       "                \"show\": true,\n",
       "                \"title\": \"\\u6570\\u636e\\u89c6\\u56fe\",\n",
       "                \"readOnly\": false,\n",
       "                \"lang\": [\n",
       "                    \"\\u6570\\u636e\\u89c6\\u56fe\",\n",
       "                    \"\\u5173\\u95ed\",\n",
       "                    \"\\u5237\\u65b0\"\n",
       "                ],\n",
       "                \"backgroundColor\": \"#fff\",\n",
       "                \"textareaColor\": \"#fff\",\n",
       "                \"textareaBorderColor\": \"#333\",\n",
       "                \"textColor\": \"#000\",\n",
       "                \"buttonColor\": \"#c23531\",\n",
       "                \"buttonTextColor\": \"#fff\"\n",
       "            },\n",
       "            \"dataZoom\": {\n",
       "                \"show\": true,\n",
       "                \"title\": {\n",
       "                    \"zoom\": \"\\u533a\\u57df\\u7f29\\u653e\",\n",
       "                    \"back\": \"\\u533a\\u57df\\u7f29\\u653e\\u8fd8\\u539f\"\n",
       "                },\n",
       "                \"icon\": {}\n",
       "            },\n",
       "            \"magicType\": {\n",
       "                \"show\": true,\n",
       "                \"type\": [\n",
       "                    \"line\",\n",
       "                    \"bar\",\n",
       "                    \"stack\",\n",
       "                    \"tiled\"\n",
       "                ],\n",
       "                \"title\": {\n",
       "                    \"line\": \"\\u5207\\u6362\\u4e3a\\u6298\\u7ebf\\u56fe\",\n",
       "                    \"bar\": \"\\u5207\\u6362\\u4e3a\\u67f1\\u72b6\\u56fe\",\n",
       "                    \"stack\": \"\\u5207\\u6362\\u4e3a\\u5806\\u53e0\",\n",
       "                    \"tiled\": \"\\u5207\\u6362\\u4e3a\\u5e73\\u94fa\"\n",
       "                },\n",
       "                \"icon\": {}\n",
       "            },\n",
       "            \"brush\": {\n",
       "                \"icon\": {},\n",
       "                \"title\": {\n",
       "                    \"rect\": \"\\u77e9\\u5f62\\u9009\\u62e9\",\n",
       "                    \"polygon\": \"\\u5708\\u9009\",\n",
       "                    \"lineX\": \"\\u6a2a\\u5411\\u9009\\u62e9\",\n",
       "                    \"lineY\": \"\\u7eb5\\u5411\\u9009\\u62e9\",\n",
       "                    \"keep\": \"\\u4fdd\\u6301\\u9009\\u62e9\",\n",
       "                    \"clear\": \"\\u6e05\\u9664\\u9009\\u62e9\"\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    },\n",
       "    \"visualMap\": {\n",
       "        \"show\": true,\n",
       "        \"type\": \"piecewise\",\n",
       "        \"min\": 0,\n",
       "        \"max\": 150,\n",
       "        \"inRange\": {\n",
       "            \"color\": [\n",
       "                \"#50a3ba\",\n",
       "                \"#eac763\",\n",
       "                \"#d94e5d\"\n",
       "            ]\n",
       "        },\n",
       "        \"calculable\": true,\n",
       "        \"inverse\": false,\n",
       "        \"splitNumber\": 5,\n",
       "        \"orient\": \"vertical\",\n",
       "        \"showLabel\": true,\n",
       "        \"itemWidth\": 20,\n",
       "        \"itemHeight\": 14,\n",
       "        \"borderWidth\": 0\n",
       "    }\n",
       "};\n",
       "                chart_235aa92d2e7146209ce2767eb2b0e08f.setOption(option_235aa92d2e7146209ce2767eb2b0e08f);\n",
       "        });\n",
       "    </script>\n"
      ],
      "text/plain": [
       "<pyecharts.render.display.HTML at 0x1487172e550>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from pyecharts import options as opts\n",
    "from pyecharts.charts import Map\n",
    "from pyecharts.faker import Faker\n",
    "\n",
    "c = (\n",
    "    Map()\n",
    "    .add(\"高校数量\",[[p[:-1],sum_values(p)] for p in province_name],\"china\")\n",
    "    .set_global_opts(\n",
    "        title_opts=opts.TitleOpts(\n",
    "            title=\"Map-高校分布\"\n",
    "        ), \n",
    "        visualmap_opts=opts.VisualMapOpts(\n",
    "            max_=150,\n",
    "            is_piecewise = True\n",
    "        ),\n",
    "        legend_opts = opts.LegendOpts(\n",
    "            pos_left = 20,\n",
    "            pos_top = 100\n",
    "        ),\n",
    "        toolbox_opts = opts.ToolboxOpts(\n",
    "            pos_right = 20,\n",
    "            pos_top = 20\n",
    "        )\n",
    "    )\n",
    "#     .render(\"map_guangdong.html\")\n",
    ")\n",
    "c.render_notebook()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pyecharts import options as opts\n",
    "from pyecharts.charts import Map\n",
    "from pyecharts.faker import Faker\n",
    "\n",
    "c = (\n",
    "    Geo()\n",
    "    .add_schema(maptype='china')\n",
    "    .add(\"geo\",data_mul)\n",
    "    .set_series_opts(\n",
    "        label_opts=opts.LabelOpts(\n",
    "            is_show=False)\n",
    "    )\n",
    "    .set_global_opts(\n",
    "        visualmap_opts=opts.VisualMapOpts(),\n",
    "        title_opts=opts.TitleOpts(\n",
    "            title=\"Geo-基本示例\"\n",
    "        )\n",
    "    )\n",
    "#     .render(\"geo_base.html\")\n",
    ")\n",
    "c.render_notebook()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "with open('高校信息.json','r',encoding='utf-8') as f:\n",
    "    data = json.load(f)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "from pandas import json_normalize"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0     [{'city_name': '北京市', 'universities': ['北京大学',...\n",
       "1     [{'city_name': '天津市', 'universities': ['南开大学',...\n",
       "2     [{'city_name': '邯郸市', 'universities': ['邯郸学院',...\n",
       "3     [{'city_name': '晋中市', 'universities': ['晋中学院',...\n",
       "4     [{'city_name': '包头市', 'universities': ['包头职业技术...\n",
       "5     [{'city_name': '大连市', 'universities': ['大连交通大学...\n",
       "6     [{'city_name': '延边朝鲜族自治州', 'universities': ['延...\n",
       "7     [{'city_name': '大庆市', 'universities': ['黑龙江八一农...\n",
       "8     [{'city_name': '上海市', 'universities': ['复旦大学',...\n",
       "9     [{'city_name': '苏州市', 'universities': ['苏州科技大学...\n",
       "10    [{'city_name': '舟山市', 'universities': ['浙江海洋大学...\n",
       "11    [{'city_name': '马鞍山市', 'universities': ['安徽工业大...\n",
       "12    [{'city_name': '泉州市', 'universities': ['泉州师范学院...\n",
       "13    [{'city_name': '抚州市', 'universities': ['东华理工大学...\n",
       "14    [{'city_name': '青岛市', 'universities': ['青岛理工大学...\n",
       "15    [{'city_name': '焦作市', 'universities': ['黄河交通学院...\n",
       "16    [{'city_name': '荆州市', 'universities': ['长江大学工程...\n",
       "17    [{'city_name': '湘西土家族苗族自治州', 'universities': [...\n",
       "18    [{'city_name': '汕头市', 'universities': ['广东以色列理...\n",
       "19    [{'city_name': '柳州市', 'universities': ['广西科技大学...\n",
       "20    [{'city_name': '三亚市', 'universities': ['三亚学院',...\n",
       "21    [{'city_name': '重庆市', 'universities': ['重庆大学',...\n",
       "22    [{'city_name': '绵阳市', 'universities': ['绵阳师范学院...\n",
       "23    [{'city_name': '遵义市', 'universities': ['遵义师范学院...\n",
       "24    [{'city_name': '大理白族自治州', 'universities': ['滇西...\n",
       "25    [{'city_name': '咸阳市', 'universities': ['西藏民族大学...\n",
       "26    [{'city_name': '咸阳市', 'universities': ['咸阳师范学院...\n",
       "27    [{'city_name': '庆阳市', 'universities': ['庆阳职业技术...\n",
       "28    [{'city_name': '海东市', 'universities': ['青海高等职业...\n",
       "29    [{'city_name': '固原市', 'universities': ['宁夏师范学院...\n",
       "30    [{'city_name': '阿拉尔市', 'universities': ['塔里木大学...\n",
       "Name: cities, dtype: object"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "json_normalize(data['schools'])['cities']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.6rc1"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
